package com.ripplezjw.blog.Service;

import com.ripplezjw.blog.mapper.ArtTagMapper;
import com.ripplezjw.blog.mapper.TagMapper;
import com.ripplezjw.blog.po.Article;
import com.ripplezjw.blog.po.Tag;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.util.StringUtils;

import java.util.List;

@Service
public class TagService {
    @Autowired
    TagMapper tagMapper;
    @Autowired
    ArtTagMapper artTagMapper;

    public List<Tag> showAllTags() {
        return tagMapper.findTags();
    }

    public String addTag(Tag tag) {
        if (StringUtils.isEmpty(tag.getTagName())) return "标签名不能为空";
        if (tagMapper.cntTagByTagName(tag.getTagName()) > 0) return "标签名已存在";
        tagMapper.addTag(tag);
        return "";
    }

    public Tag clickModTagBtn(int tagId) {
        return tagMapper.findTagById(tagId);
    }

    public String modTag(Tag tag) {
        if (StringUtils.isEmpty(tag.getTagName())) return "标签名不能为空";
        if (tagMapper.cntTagByTagName(tag.getTagName()) > 0) return "标签名已存在";
        tagMapper.updateTagByTagId(tag);
        return "";
    }

    public void clickDelTagBtn(int tagId) {
        artTagMapper.delArtTagByTagId(tagId);
        tagMapper.delTagByTagId(tagId);
    }

    public List<Article> getAllArticleByTagId(int tagId) {
        return tagMapper.findArticleByTagId(tagId);
    }
}
